

package com.dominator.service;

import com.dominFramework.core.typewrap.Dto;
import com.dominator.utils.api.ApiMessage;
import com.dominator.utils.exception.ApiException;

public interface ApiUserService {

    /**
     * 昵称修改
     *
     * @param
     * @return
     * @throws ApiException
     */
    ApiMessage updateUser(Dto dto) throws ApiException;


    /**
     * 绑定手机
     *
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage bindingPhone(Dto dto) throws ApiException;


    /**
     * 绑定微信openId
      * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage bindingWxOpenId(Dto dto) throws  ApiException;


    /**
     * 绑定qq
     *
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage bindingQq(Dto dto) throws ApiException;


    /**
     * 绑定weixin
     *
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage bindingWeixin(Dto dto) throws ApiException;


    /**
     * 绑定weibo
     *
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage bindingWeibo(Dto dto) throws ApiException;


    /**
     * 修改密码
     *
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage modifyPassword(Dto dto) throws ApiException;

    /**
     * 找回密码
     *
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage findPassword(Dto dto) throws ApiException;



    /**
     * 获取用户信息
     *
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage getUser(Dto dto) throws ApiException;


    /**
     * 邀请列表
     *
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage invitationList(Dto dto) throws ApiException;



    /**
     * 获取用户二维码
     *
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage getUserQRCode(Dto dto) throws ApiException;


    /**
     * 会员升级
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage upgrade(Dto dto) throws ApiException;

    /**
     * 会员续费
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage renewal(Dto dto) throws ApiException;

    /**
     * 会员升级,补差价，不加时
     * @param dto
     * @return
     * @throws ApiException
     */
    ApiMessage upgradeNoTime(Dto dto) throws ApiException;
}
